package dataservice.courseDataService;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.ArrayList;

import po.coursePO.CoursePO;
import dataservice.ResultMessage;

//change
public interface CourseDatabaseService extends Remote {
	public ResultMessage insert(CoursePO po)throws RemoteException;

	public ResultMessage delete(CoursePO po)throws RemoteException;

	public ResultMessage update(CoursePO po)throws RemoteException;

	public CoursePO find(String id)throws RemoteException;
	
	public ArrayList<CoursePO> findAll()throws RemoteException;
	
	public ArrayList<CoursePO> findSelectableCourse(String departmentID)throws RemoteException;
	
	public ArrayList<CoursePO> findSelectableCourses()throws RemoteException;
	
	public ArrayList<String> findAllDepartments()throws RemoteException;

	public ArrayList<CoursePO> findCourseByDepartment(String department) throws RemoteException;

	public ArrayList<CoursePO> findCourseByTeacherID(String teacherID) throws RemoteException;
}
